9b8d6e1dc74833cd4b5e51fc9df335828b1bb978,common/src/main/java/me/lucko/luckperms/common/core/NodeFactory.java,NodeFactory,builderFromSerialisedNode,#String#Boolean#,72

Before Change


                List<String> serverParts = Splitter.on('-').limit(2).splitToList(parts.get(0));
                // 0=server   1=world

                if (parts.get(1).contains("$")) {
                    List<String> tempParts = Splitter.on('$').limit(2).splitToList(parts.get(1));
                    return new NodeBuilder(tempParts.get(0), true).setServerRaw(serverParts.get(0)).setWorld(serverParts.get(1))
                            .setExpiry(Long.parseLong(tempParts.get(1))).setValue(b);

After Change


                // 0=server   1=world

                // if parts[1] contains $
                if (Patterns.compileDelimitedMatcher("$", "\\").matcher(parts.get(1)).find()) {
                    List<String> tempParts = Splitter.on('$').limit(2).splitToList(parts.get(1));
                    return new NodeBuilder(tempParts.get(0), true).setServer(serverParts.get(0)).setWorld(serverParts.get(1))
                            .setExpiry(Long.parseLong(tempParts.get(1))).setValue(b);